Processing of text inputs into a computer system has many facets. Application programs typically handle keystroke entries from a keyboard, as well as selection of characters from a keyboard palette displayed on a display device through the use of a mouse or other pointing device. On-going technological improvements to computer systems have enhanced the methods for inputting data, including text, into computers. Such improvements include the ability to input text as handwriting, via a pen or stylus device. Another improvement includes the ability to input text captured as speech, via a microphone input device.
Improvements in text input devices, including word processing programs, have led to support of text input in several languages, including various non-English languages, such as Greek, Hebrew, Chinese, Japanese, etc. Typical keyboard input in such languages is normally performed using multiple keystroke commands. Although input efficiency of such languages is improved with the ability to use speech or handwriting input devices rather than multiple keystroke entry, processing inputs from these devices is typically more complex and thus not supported by most word processing programs.
In addition to supporting multiple languages, word processing programs often include stylistic aids to assist verification of character translations from one language to another. Further, linguistic aids, such as spell checkers, dictionaries, and thesauri, offer more assistance in checking accuracy and providing alternatives when inputting text.
Such linguistic and stylistic aids are usually quite helpful. However, these aids are normally limited for use within the word processing programs and are not easily transferable to other text input applications. Thus, not all application programs that utilize textual inputs, e.g., electronic mail programs, are capable of providing the enhanced capabilities these aids support.
Accordingly, a need exist for supporting the input of text from non-keyboard based devices and providing linguistic and stylistic assistance mechanisms for different types of text input programs. The present invention addresses such a need.